package com.food.platformmsgmanagement.port.inbound;

import com.food.platformmsgmanagement.adapter.inbound.AlimentDTO;
import com.food.platformmsgmanagement.adapter.inbound.CommentDTO;
import com.food.platformmsgmanagement.domain.Aliment;
import com.food.platformmsgmanagement.domain.Comment;
import com.food.platformmsgmanagement.domain.Status;

import java.util.List;

/**
 * 管理美食信息和相关评论
 * @author 24270
 */
public interface AlimentUseCase {
    List<AlimentDTO> getAllAliment();
    AlimentDTO getTheAliment(String id);
    /**
     * 改变美食信息状态，比如不可见
     * @param id, Status
     */
    void changeAlimentStatus(String id, String status);
    String addAliment(String title, String mainText);
    void addAlimentImg(String id, List<String> urlList);
    boolean deleteAliment(String id);


    /**
     * 通过美食id获取旗下所有评论
     * @param alimentId
     * @return
     */
    List<CommentDTO> getAllComment(String alimentId);
    List<CommentDTO> getNumComment(String alimentId, int number);
    void addComment(String alimentId, String userName, String mainText);
    boolean deleteComment(String id);
}
